iT邦幫忙

2023 iThome 鐵人賽

DAY 1
0

前言

預計分享的內容

有感於 React Navie 繁體中文的內容偏少加上在工作中踩了不少坑,因此這次鐵人賽將分享我以網頁前端工程師的角度開發 React Native 的心路歷程,主要聚焦於使用 React Native CLI 開發時的一些經驗、技巧甚至是踩過的坑,包含如何建置開發環境、如何升遷版本、發布測試、如何做基本的效能優化、最後再到如何將做好的 APP 上架至 Google Play、 App Store 上。基本上,這系列文章,不會教你怎麼寫 React(有更厲害的大大的文章可以看,我就不獻醜了)或 React Native Basic Componets 的介紹(官網上文件都有),只會有專案實戰應用工具以及常見的 APP 功能開發的分享,期望這些文章可以在讀者在思考如何開發或專案卡關時有所幫助。

自我期望

希望可以盤點自己開發 React Native 的經驗,還有第一次挑戰完成連續30天寫文章的目標,所以這系列的文章並不會連貫的帶讀者完成一個 APP,而是把自己的開發的經驗做單元式的整理。

React Native 簡介

什麼是 React Native?

React Native 是主要由 Meta 團隊開發維護的開源框架,藉由 React.js 和 Javascript 去開發 iOS、Android 跨平台的應用程式。自 2015 年開始開發到目前版號仍未上1.0,現在版號在 0.72

為什麼開發 APP 要使用 React Native 呢?

  • 網頁前端開發者容易上手:React Native 主要使用 React.js,雖然說在語法跟元件與網頁有些許不同,但整體核心概念與邏輯還是 React.js 的脈絡。
  • 一次可以開發 Android 跟 iOS app :可以節省人力成本,適合小團隊或新創公司。
  • 支援 Fast Refresh: 方便開發者在更新 Code 後馬上看到成品 debug。
  • React 生態系龐大:有很多第三方開源套件可以應用,還有 React 龐大的社群。

使用 React Native 開發 APP 有哪些缺點?

  • 版本升遷不易: 以筆者經驗來說,每次升版都很痛苦,因為改動的幅度太大了,影響到許多套件、Android、iOS 原生的設定,一不小心就會有功能壞掉。
  • 部分 UI 或屬性在 Android 或 iOS 裝置不同,需要額外花時間針對不同系統調整。
  • 效能不如原生開發的應用程式好: React Native 是由 Javascript 透過橋接(bridge)的方式 與原生 module 溝通,在效能上必然不如直接由原生開發好。
  • 有時候某些 issue 需要使用 Java/Kotiln/Swift/Objective-C 去修復。

下一篇
DAY 2 - React Native 開發的成本與學習的管道
系列文
React Native CLI 開發心法31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言